Almost all electronic systems rely on a clock source and clock signal to act as a master timing element for control of hardware included in the system. Several different methods of generating a clock signal are known to those skilled in the art. Three commonly used oscillators described below are based on either a crystal, a resistor-capacitor network, or a ring oscillator. None of these options provide a low cost, high accuracy clock signal.
Traditional methods of generating the clock signal have used crystals. While this method is well known and is very reliable, several problems are introduced when the electronic system package is reduced in size. Additional problems are encountered when reducing the cost and power consumption of the system become dominant considerations.
The frequency of a crystal operating point is determined by the physical characteristics of the crystalline structure. This physical dependance dictates the size of the package, preventing its use in some applications required to fit into very small packages, such as small memory cards. Further, crystal oscillators require valuable circuit board space and have minimum height restrictions. A system incorporating a crystal, therefore, is limited in the ability to reduce packaging sizes. A crystal-based system also requires extra pins for connecting the crystal to an integrated circuit requiring the clock signal. In addition, a typical crystal design requires a resistor and capacitor, adding cost, but more importantly taking more board space.
Crystal oscillator designs have additional disadvantages. The crystal oscillators do not operate over extended voltage ranges. Therefore, a supply voltage which ranges from three to five volts can create problems. Crystals also have long start times when power to the system is turned on. These start times must be taken into account so that glitches and low voltage signals do not make the system malfunction. During a start-up, the oscillator can be disconnected from the system until the crystal has reached a stabile operating point. The time required to stabilize the crystal can be quite long and will reduce the performance of systems that require extensive use of power on/off. One type of system affected is portable battery-driven circuits which turn off the power supply to conserve the battery. In addition to the power and performance problems described, crystals are somewhat expensive and further add to the cost of systems.
Crystal-based systems can be quite power demanding. If a crystal oscillator is used, it requires significant current for its operation, typically 1 mA per 1 megahertz of operation. For example, if a crystal is used across an inverter in an integrated circuit, the inverter must be of sufficient strength to allow oscillation and drive the loads required. This typically requires large current for proper operation. Because of the slow start-up time, the systems tend to leave power applied to the crystal. Again, continuously powering the crystal results in high power consumption, making the systems less attractive in battery applications.
One solution that designers have devised to reduce the slow start up time of crystals is to use of resistor-capacitor (RC) oscillator designs. RC oscillators do not have the frequency accuracy of crystal oscillator, but have other operational advantages. The use of an RC oscillator essentially allows instant start-up of the clock signal from a stopped state. This design option also has problems that make for a less than ideal solution. While this approach solves the delay time for starting or stopping the clock, it still requires external resistor and capacitor components which add to the package space requirements. An RC oscillator also requires additional pins for the circuit, typically 2 output and 1 input pin. Driver circuits used to output the RC clock signals tend to be larger than what would be used to drive internal signals. Thus, the RC oscillator circuit requires more power than an internally generated clock or driver signal. Further, variations between the components in the RC network also introduce variations in the clock frequency. Ways of reducing these variations are possible, but can be costly.
Ring oscillators have been used as an easy way to make an oscillating signal, and have been incorporated in many electronic circuits. The ring oscillator is commonly used in integrated circuit designs where an exact clock signal is not required. In systems, such as Flash memory systems, a ring oscillator can be used that would allow the system to function. Large performance variations, however, would be seen by the system as the ring oscillator varied over process differences, voltage variations and temperature excursions. In most cases the resultant wide range of operating parameter frequencies would be intolerable and would make for a noncompetitive product.
Systems which do not require the accuracy of a crystal oscillator can be operated using either a RC oscillator or a ring oscillator. A Flash memory system is an example of a system where some variation in timing can be tolerated, if lower cost and power savings can be realized. The ring oscillator is the most attractive because it requires less power, less pins and has fast start-stop gating. The huge drawback of this approach is the wide variations in clock signal frequency over operating parameter variables such as voltage and temperature that typically would be seen by such a system.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for an integrated circuit which optimizes operating performance by dynamically monitoring environmental parameters and adjusting the operation and clock signal frequency.